iT邦幫忙

2024 iThome 鐵人賽

DAY 24
0
Software Development

Event driven architecture的奧妙系列 第 24

Day 24 Event Broker的法寶: NATS - 介紹

  • 分享至 

  • xImage
  •  

前言

昨天我們比較了Event Broker以及Message Queue的不同之處,並用表格的方式為大家說明兩種design pattern的特性,從今天開始會從Event Broker裡挑選出一個NATS來講。

好~讓我們開始吧!

什麼是NATS

首先,什麼是NATS?
NATS的全名為"Neural Autonomic Transport System",是一個高效能開源的訊息系統,其目的在幫助client端與分散式系統、系統與系統之間的溝通,透過NATS高效能、輕量且易於擴展的特性,非常適合用於微服務以及物聯網的架構。

為什麼要NATS

如前幾篇的Event Broker談到,Event Broker會對event進行一系列的處理,像是管理、routing、分送等。
那要如何管理就是個非常重要的點,NATS就能很好的管理event,它提供了很多機制讓EDA更好的儲存發送event:

  1. Asynchronous的溝通: NATS提供pub-sub的溝通機制,允許publisher可以在不等代subscriber處理event的情況下發送其他訊息。
  2. 可擴展性: 設計NATS的初衷就是希望能處理高吞吐量以及低延遲的event,而這兩個特點非常適合EDA的系統。當event的數量顯著增加,系統可透過橫向的擴展處理增加的負載
  3. 容錯率: 在分布式的系統中,conponent可能會發生錯誤,NATS支援clustering的容錯機制,確保系統的某些節點出錯的時候,系統也能繼續運行

總結

NATS是一個高效能的訊息系統,設計的目的是為了幫助EDA更好的管理event。
今天我們簡單講什麼是NATS與為什麼要使用NATS,明天會講NATS中的基本也是核心概念,Core NATS。

好了~今天就到這邊


上一篇
Day 23 Event Broker v.s Message Queue
下一篇
Day 25 Event Broker的法寶: Nats - CoreNATS
系列文
Event driven architecture的奧妙30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言